#include <iostream>

using namespace std;

class Test_1 {
  public:
    Test_1(int n = 0) : num(n) {}
    Test_1 operator++();

    int num;
};

class Test_2 {
  public:
    Test_2(int n = 0) : num(n) {}
    Test_2 operator++();

    int num;
};

Test_1 Test_1::operator++() { return num + 1; }
Test_2 Test_2::operator++() {
    ++num;
    return num;
}

int main() {
    Test_1 i;
    Test_2 j;
    cout << "i = " << i.num << endl;
    cout << "j = " << j.num << endl;
    ++i;
    ++j;
    cout << "i = " << i.num << endl;
    cout << "j = " << j.num << endl;
}
